iT邦幫忙

2023 iThome 鐵人賽

DAY 30
0
自我挑戰組

從零開始學Web Framework : React篇系列 第 30

Day_30: 滑鼠滑過翻轉動畫效果

  • 分享至 

  • xImage
  •  

1.code

import React from 'react';
import styles from './ImageFlipOnHover.module.css'; 
import Image from 'next/image';

function ImageFlipOnHover() {
  return (
    <div className={styles.container}>
      <div className={styles['image-container']}>
        <div className={styles.image}>
          <Image src="/S__2990083_0.jpg" alt="Image 1" width={150} height={150} />
        </div>
      </div>

      <div className={styles['image-container']}>
        <div className={styles.image}>
          <Image src="/S__2990086_0.jpg" alt="Image 2" width={150} height={150} />
        </div>
      </div>

      <div className={styles['image-container']}>
        <div className={styles.image}>
          <Image src="/S__2990087_0.jpg" alt="Image 3" width={150} height={150} />
        </div>
      </div>

      <div className={styles['image-container']}>
        <div className={styles.image}>
          <Image src="/S__2990088_0.jpg" alt="Image 3" width={150} height={150} />
        </div>
      </div>
    </div>
  );
}

export default ImageFlipOnHover;
.container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  
  .image-container {
    width: 200px;
    height: 200px;
    perspective: 1000px;
    cursor: pointer;
  }
  
  .image {
    width: 100%;
    height: 100%;
    transition: transform 0.5s;
    transform-style: preserve-3d;
  }
  
  .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  .image:hover {
    transform: rotateY(180deg);
  }

2.實作


上一篇
Day_29: 圖片跟著鼠標
系列文
從零開始學Web Framework : React篇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言